Three dimensional (3D) imaging is a technique of creating the illusion of depth in an image so that the depth is perceived by a viewer. As 3D applications become more widespread, accurate 3D data compression is becoming more and more important. For example, considerations for 3D applications include not only the speed of rendering, but also the speed of 3D data processing (e.g., such as registration and merging), and the size of memories to save the 3D files.
Triangle mesh compression is a type of data compression that often involves reducing the number of triangles in the mesh while attempting to preserve the overall shape, volume, and boundaries of the mesh. There are a number of different approaches to triangle mesh compression. A first example, often referred to as coplanar facets merging, searches the facets (or triangle planes in the mesh) to identify facets that are coplanar or nearly coplanar. The identified facets are merged into large polygons to simplify the overall mesh.
A second example, often referred to as controlled vertex/edge/facet decimation, iteratively eliminates components (e.g., such as vertices, edges and facets) in the mesh. Components are often selected for elimination based on local optimization criteria (e.g., criteria that only preserves the shape (such as high curvature parts) of 3D data without considering other things, such as the distance and angle relative to the viewer or 3D camera) that will preserve the overall shape of mesh.
A third example, often referred to as vertex clustering, groups vertices of the triangle mesh into clusters, and computes a new representative vertex for each cluster. A fourth example, often referred to as a wavelet-based approach, usually includes a three phases process of re-meshing, re-sampling and wavelet parameterization, to build a multi-resolution representation of the surface. However most triangle mesh compression algorithms just consider the overall shape preservation of the meshes (e.g., regardless of the depth of the mesh).